package com.aizuda.boot.modules.business.performancePlan.dto;

import com.aizuda.boot.modules.common.constant.enums.CycleTypeEnum;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDate;
import java.util.List;

/**
 * 收款计划组 DTO
 */
@Data
@Schema(description = "收款计划组")
public class CollectionPlanGroupDTO {

    @Schema(description = "是否为周期计划（0=否，1=是）")
    private Integer isCyclePlan;

    @Schema(description = "总期数")
    private Integer totalPeriods;

    @Schema(description = "首次收款时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate firstCollectionDate;

    @Schema(description = "收款频率")
    private Integer collectionFrequency;

    @Schema(description = "周期类型（年、月、周、日）")
    private CycleTypeEnum cycleType;

    @Schema(description = "收款计划明细列表")
    private List<CollectionPlanItemDTO> children;
}
